home *** CD-ROM | disk | FTP | other *** search
- .cs 1 on
- The SPROSC command copies a file or files from tape to disk. By default, a
- tape is read from the current position, but the user may instead request a
- specific file number. SPROSC will also do limited label-checking on
- standard-label tapes - the user may request that the tape and/or data set name
- be verified before copying. Any validation failure aborts the command. When
- multiple files are to be read, only the first one's name can be verified.
-
- SPROSC is most convenient for labeled volumes, but it may be used even with
- unlabeled tapes, provided that the user knows the relevant DCB information (see
- the O/S JCL Reference Manual for a full description of DCB parameters if you
- dare). Most DCB information can usually be omitted anyway because defaults are
- supplied or because the information is irrelevant under CMS. SPROSC has the
- option of deblocking or reblocking files in the process of copying.
-
- Input data from an ASCII source will be translated to EBCDIC by default (the
- source can be declared "ASCII" either explicitly in the command or implicitly,
- by the presence of ANSI standard labels). In addition, files from ANSI
- standard-label tapes are automatically converted from VAX-style VFC to ANSI
- carriage control if necessary.
-
- Normally, SPROSC will overwrite any existing CMS file of the chosen name, but
- when the tape file is the continuation of a multi-reel dataset (as indicated by
- a volume SEQUENCE number greater than 1 in the header label), SPROSC will
- append the file to an existing file of the same name, if any.
-
- Optionally, before copying from tape, SPROSC will position the tape to the
- requested file. A labeled tape is positioned by reading the labels and spacing
- forward or backward as needed. An unlabeled tape is first rewound and then
- spaced forward to the correct file. When the command has finished copying, the
- tape is normally positioned at the next file, that is, after the file mark that
- ends the trailer labels (on a labeled tape) or the data (on an unlabeled tape).
-
- If the disk file-id is omitted from the command, SPROSC will just position the
- tape to the correct file. If the tape is labeled, SPROSC will display the DSN
- and leave the tape positioned at the beginning of the header file.
-
- Examples:
-
- 1. Copy 4 files from a labeled tape, beginning with file 7, keeping the same
- file names, deblocking if necessary.
-
- SPROSC TAP1 = (SL 7 EOF 4
-
- 2. Copy file 12 from a non-labeled tape, using file-id "fn ft", assuming
- OS-style varying-length record format (VBS).
-
- SPROSC TAP1 fn ft A4 (NL 12
-
- 3. Copy the current file from a non-labeled tape, assuming fixed-length 80-byte
- records, deblocking if necessary.
-
- SPROSC TAP1 fn ft (RECFM F
-
- 4. Copy a two-reel file from labeled tapes, starting at file 3 of the first
- tape.
-
- SPROSC TAP1 = (SL 3
- SPROSC TAP2 = (SL 1
-
- 5. Copy all files with names beginning with the string "IK0" from the whole
- tape.
-
- SPROSC TAP1 = = A1 (SL 1 EOT PREFIX IK0
-
- Problems/bugs should be reported to the author:
- J.F. Chandler <PEPMNT@CFAAMP> (BITNET)
- <PEPMNT@CFAAMP.HARVARD.EDU> (Internet)
-
- .cs 1 off
- .cs 2 on
- +---------+-------------------------------------------------------------------+
- | | |
- | | -- -- -- -- -- -- |
- | SPROSC | TAPN | fn ft | fm | | | ( options | |
- | | | = = -- -- | -- -- |
- | | -- -- |
- | | ? |
- | | |
- | | |
- | | Options: |
- | | RECFM ccc LRECL nnnnn |
- | | |
- | | ( BLKSIze nnn ) ( NL -- -- ) |
- | | ( BLock nnn ) ( SL | nnn | ) |
- | | ( FILE -- -- ) |
- | | ( VOLume volid ) |
- | | ( VOLID volid ) DSName dsn |
- | | |
- | | ( EBCdic ) ( EOF n ) |
- | | ( ASCii ) ( EOT ) |
- | | |
- | | REBlock nnn PREfix sss |
- | | |
- +---------+-------------------------------------------------------------------+
-
- .cs 2 off
- .cs 3 on
- Parameters:
-
- TAPn is the device name for a tape drive (n may be 0-9) preferably already
- positioned to the correct file (beginning of header label if SL tape,
- beginning of data if NL tape)
-
- ? causes SPROSC to display its version number.
-
- fn ft fm gives the file-id of the output CMS copy. The default filemode is
- "A1", except that files of type VS or VBS are forced to filemode 4.
- If multiple files are to be read, only the first one receives this
- file-id, and subsequent files are named from the input data set
- labels, just as if "=" had been specified. The filemode is retained
- for subsequent files.
-
- = specifies that the output CMS file is to be given a default CMS
- file-id formed from the input data set label, which must have a
- non-empty name. This form (=) is valid only for input from labeled
- tape. The last two qualifiers of a multi-level DSNAME become the
- filename and filetype of the output file with one exception: when
- there are at least three qualifiers, and the last one consists of a
- letter plus a digit (0-6), the digit is taken to be the filemode
- number of the output file, and the previous two tokens are used for
- the filename and filetype. If the name has only one qualifier, that
- is used as the filename, and the filetype is TAPEFILE. For example,
- a DSN of "WWW.X.Y.Z" would yield a file-id of "Y Z A1", but
- "WWW.X2.Y2.Z2" would yield "X2 Y2 A2".
- .cs 3 off
- .cs 4 on
-
- Options:
-
- Note: the options RECFM, LRECL, and BLKSIZE are used only in copying files from
- an unlabeled tape or if tape label processing is bypassed (by positioning to a
- data file). Whenever SPROSC reads data set labels, the encoded attributes
- supersede the command options.
-
- RECFM gives the record format for the input data set. The default is U.
-
- LRECL gives the logical record length for the input data set. This option
- is ignored for all data sets with varying-length records. The
- default is 80.
-
- BLKSIZE (or BLOCK) gives the block size for the input data set. This option
- defaults to 32756 and is, therefore, unnecessary for VBS tape data
- sets. It is also unnecessary for files being deblocked, but it
- should be specified for any F or FB data set destined for filemode 4
- from an unlabeled tape.
-
- REBLOCK gives the block size for the output file, assuming it is to be
- filemode number 4 and converted from VBS or VS to VB. The value must
- be at least 4 more than the LRECL of the input data set but should be
- less than 32768. If the value is too small, the copy operation will
- halt.
-
- SL signifies a standard-label tape and optionally gives the input file
- number. If no number is given, SPROSC will read from the current
- tape file. If a number is given, SPROSC will space forward or
- backward as needed to find the requested file before reading data,
- even if the tape is currently positioned at a data (rather than
- label) file.
-
- NL signifies a non-labeled tape (the default) and optionally gives the
- input file number. If no number is given, SPROSC will read from the
- current tape file. If a number is given, SPROSC will rewind and then
- space forward to find the requested file. If the tape is labeled
- after all, and the requested file is a label, SPROSC will still read
- the file as data.
-
- FILE gives the file number on tape. By default SPROSC reads the current
- file. The label status should be specified separately by the "SL" or
- "NL" option (or by default to NL).
-
- VOLUME gives the expected volume name of a SL tape. When the name is
- specified, it will be checked against the name encoded in the volume
- and/or data set header labels. SPROSC will halt if they do not
- match. Note that the volume name is never checked in the header
- label of the second or subsequent part of a multi-reel data set,
- since the label encodes the name of the first volume.
-
- DSN gives the expected data set name of a SL tape file. This option must
- be specified last in the command, since all subsequent tokens are
- concatenated with "." separators to form the DSN. The result must
- not be more than 44 characters. Only the last 17 characters are used
- in the comparison, but the entire name will be used if necessary for
- supplying a default CMS file-id (see above). For example, the
- specification "DSN AAA1234 INPUT STREAM CNTRL" would yield a DSN of
- "AAA1234.INPUT.STREAM.CNTRL", but only "NPUT.STREAM.CNTRL" would be
- significant in the comparison.
-
- ASCII specifies that the input tape is encoded in ASCII and that the
- labels, if any, are ANSI standard. The data will be translated to
- EBCDIC. This option is the default when reading an ANSI
- standard-label tape.
-
- EBCDIC specifies that the input tape is encoded in EBCDIC (or is binary) and
- that the labels, if any, are presumably IBM standard. The data will
- not be translated, even if the labels turn out to be ANSI labels.
-
- EOF gives the number of consecutive files to be read from the input tape.
- This option may be specified only for a labeled tape. If fewer files
- exist than are requested, this is equivalent to the EOT option.
-
- EOT specifies that consecutive files are to be read from the input tape
- up to the end. This option may be specified only for a labeled tape.
- .cs 4 off
- .cs 6 on
-
- Error messages:
-
- SPROSC071E UNKNOWN OPTION '........'
- SPROSC083E MISSING FILEID
- SPROSC095E NO VALUE SUPPLIED FOR '........' OPTION
- SPROSC098E ILLEGAL PARAMETER '........'
- SPROSC283E INSUFFICIENT STORAGE FOR BUFFERS
- SPROSC308E ILLEGAL ........ VALUE '........'
- SPROSC340E INCONSISTENT OPTION '........'
- SPROSC770I '........' (.... BLOCKS) COPIED TO '.....'
- SPROSC771E MISSING TAPE ID
- SPROSC772I REACHED EOT ON ....
- SPROSC773E REBLOCK SIZE TOO SMALL
- SPROSC775E ERROR WHILE OPENING DDNAME '........' - BAD DCB
- SPROSC779E INVALID TAPE LABELS
- SPROSC780I TAPE VOLUME: ......
- SPROSC781I TAPE ...... DSN: . . . ................. FILE ....
- SPROSC782I EXECUTING .... ........ ON .... ...
- SPROSC783I ONE OR MORE TAPE BLOCKS WERE OF IMPROPER LENGTH
- SPROSC784E MISSING OR EMPTY FILE ON INPUT TAPE
- SPROSC785E VOLUME LABEL '......' DOES NOT MATCH 'VOLID ......' OPTION
- SPROSC786E DSNAME '....' DOES NOT MATCH 'DSN .....' OPTION
- SPROSC787E DSNAME VALUE LONGER THAN 44 BYTES
- SPROSC788E SPANNED OR INVALID RECORD FOUND IN INPUT FILE
- SPROSC789E NO DSN/FID AVAILABLE FOR INPUT FILE
- .cs 6 off
-